﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MDF
{
    /// <summary>
    /// 匹配数据结果类
    /// </summary>
    public class DatasetsMatchResult
    {
        /// <summary>
        /// 匹配数据集1名字
        /// </summary>
        public string Set1Name { get; set; }
        /// <summary>
        /// 匹配数据集2名字
        /// </summary>
        public string Set2Name { get; set; }
        /// <summary>
        /// 数据集1和2的空间匹配结果
        /// double[]{ id1, id2, 几何相似度 }
        /// </summary>
        public List<double[]> MatchSpaceResult { get; set; }
        /// <summary>
        /// 数据集1和2的属性匹配结果
        /// double[]{ id1, id2, 属性相似度 }
        /// </summary>
        public List<double[]> MatchAttributeResult { get; set; }
        /// <summary>
        /// 数据集1和2的拓扑匹配结果
        /// double[]{ id1, id2, 拓扑相似度 }
        /// </summary>
        public List<double[]> MatchTopologyResult { get; set; }
        /// <summary>
        /// 数据集1和2的属性映射结果
        /// string[]{ filedName1, fieldName2 }
        /// </summary>
        public List<string[]> MatchAttributeFieldResult { get; set; }
        /// <summary>
        /// 记录空间匹配进度
        /// </summary>
        public static int SpaceProgressValue { get; set; }
        /// <summary>
        /// 记录属性匹配进度
        /// </summary>
        public static int AttributeProgressValue { get; set; }
        /// <summary>
        /// 记录拓扑匹配进度
        /// </summary>
        public static int TopollogyProgressValue { get; set; }
        /// <summary>
        /// 记录数据融合进度
        /// </summary>
        public static int FusionProgressValue { get; set; }
        /// <summary>
        /// 空间匹配的数据分子量
        /// </summary>
        public static int SpaceProgressCount { get; set; }
        /// <summary>
        /// 属性匹配的数据分子量
        /// </summary>
        public static int AttributeProgressCount { get; set; }
        /// <summary>
        /// 拓扑匹配的数据分子量
        /// </summary>
        public static int TopollogyProgressCount { get; set; }
        /// <summary>
        /// 数据融合的数据分子量
        /// </summary>
        public static int FusionProgressCount { get; set; }
        /// <summary>
        /// 记录数据集合的数据总量
        /// </summary>
        public static int SetsRecordCountSum { get; set; }
    }
}
